In this article, I will show you download file to client browser from a server using asp.net c# MVC razor view with example. I am using FileResult, it allows user to download file from the folder with specified file name. It will return the file with generic octet-stream MIME type.
When the user clicks the download button, it requests the controller method and the specified PDF file will be downloaded by the client browser.
Step 1: Create a mvc application and Right click on the controller folder and add name “Home”. Copy and paste the following code.
public class HomeController : Controller
{
//
public ActionResult Index()
{
return View();
}
private string filePath = "~/Files/";
public FileResult DownloadFile()
{
var sDocument = Server.MapPath(filePath + "newFile.pdf");
byte[] fileBytes = System.IO.File.ReadAllBytes(sDocument);
return File(fileBytes, System.Net.Mime.MediaTypeNames.Application.Octet, sDocument);
}
}
Step 2: Right click on the homeController and create an index view. Copy and paste the following code.
<h2>Download a File with MVC4 Razor view</h2>
<span class="label"><b>Information:</b></span>
@using (Html.BeginForm("DownloadFile", "Download", FormMethod.Get))
{
<input type="submit" value="Download" />
}
Post your comments / questions
Recent Article
- How to hide the ID field from the Django admin?
- It is impossible to add a non nullable field without specifying a default. Django error
- ImportError: cannot import name 'url' from 'django.conf.urls' - Django Error
- How to Enable Virtualization in BIOS Security Settings in Intel Processors For Android Studio?
- Dependency 'androidx.activity:activity:1.8.0' requires libraries and applications that depend on it.
- AttributeError: 'NoneType' object has no attribute 'get_text' - Python
- ModuleNotFoundError: No module named 'openpyxl' - Python
- How to get thumbnail from vimeo video URL in Python?
Related Article